classdef GageConfig < hgsetget
    %GAGECONFIG GageConfig for use in Slyfox_FreqSweep
    %   This stores all the relevent configuration information for a
    %   Gagecard analog input system. While all properties have a default
    %   value, these properties are ALL accessible via a GageConfigFrontend
    properties
        acqInfo = struct('SampleRate', 10000000, ...
            'ExtClock', 0, ...
            'Mode', CsMl_Translate('Dual', 'Mode'), ...
            'SegmentCount', 1, ...
            'Depth', 4096, ...
            'SegmentSize', 4096, ...
            'TriggerTimeout', 0, ...
            'TriggerDelay', 0, ...
            'TriggerHoldoff', 0, ...
            'TimeStampConfig', 0);
        trig = struct('Trigger', 1, ...
            'Slope', CsMl_Translate('Positive', 'Slope'), ...
            'Level', 20, ...
            'Source', 1, ...
            'ExtCoupling', CsMl_Translate('DC', 'ExtCoupling'), ...
            'ExtRange', 10000);
        numChannels = 2;
        chan = [];
    end
        methods
            function obj = GageConfig()
                    chan1 = struct('Channel', 1, ...
                         'Coupling', CsMl_Translate('DC', 'Coupling'), ...
                         'DiffInput', 0, ...
                         'InputRange', 2000, ...
                         'Impedance', 50, ...
                         'DcOffset', 0, ...
                         'DirectAdc', 0);
                     chan2 = struct('Channel', 2, ...
                         'Coupling', CsMl_Translate('DC', 'Coupling'), ...
                         'DiffInput', 0, ...
                         'InputRange', 2000, ...
                         'Impedance', 50, ...
                         'DcOffset', 0, ...
                         'DirectAdc', 0);
                     obj.chan = cat(1, chan1, chan2);
            end
        end 

end
